prompt: jax-grad-local-vs-ci-assertions (#260) — route, root cause, fix - #261
Merged
Conversation
3 tasks
Jammy2211
pushed a commit
that referenced
this pull request
Aug 24, 2026
All ten vendored .github/scripts/run_smoke.py copies are now thin delegators over the PyAutoHands runners. 2085 lines -> 1127, and most of what remains is the docstring explaining why each file delegates. Merged, each verified from the CI log rather than the green tick: PyAutoHands#261 --list opt-in lists + the notebook leg PyAutoHands#262 allowlist authoritative (the 13-script finding) PyAutoHands#263 regenerate_notebook resolves by relative path autolens_workspace_test#273, autogalaxy_workspace_test#111, autofit_workspace_test#90, autocti_workspace_test#16 (198 -> 77) autofit_workspace#147, autogalaxy_workspace#226, autolens_workspace#500 (356 -> 119) The record keeps the two findings that mattered most: the no_run-wins rule shipped in #261 would have silently dropped 13 scripts from smoke coverage with CI still green, and regenerate_notebook's bare-filename lookup made the stale-notebook recovery dead for every real (nested) notebook. Both were caught by measuring the real repos before writing a delegator, and both are now pinned by tests that were negative-tested against the old behaviour. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UpSFum81Jeq9KZ9wdKtaeZ
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Registry state for the
jax-grad-local-vs-ci-assertionstask, from routing through to the shipped fix. Landing this soactive.mdonmainreflects the task — an unmerged registry branch is what trips Lifecycle Drift (there is already an entry inactive.mdrecording exactly that failure from a previous session).Commits
544d095— routed the task: prompt advanceddraft/bug/autolens_workspace_test/→active/, registered inactive.mdasworkspace-dev, issue autolens_workspace_test#260 filed.ccf43b9— root cause found; numpy hypothesis falsified.2cc2a84— reclassifiedworkspace-dev→library-dev, fix branch recorded, two follow-ups filed.What the task established
The reported "local
jax_gradassertions fail but pass in CI" was not numpy 2.2.6 vs 2.4.6.lp.pyis byte-identical across numpy 2.2.6 / 2.4.6 / 2.5.2 and across 1-core vs 4-core — the likelihood runs through JAX/XLA, so numpy was never in the causal path.The actual cause is
PyAutoArray.should_simulatebeing existence-only and asymmetric, so a dataset written by an earlierPYAUTO_SMALL_DATASETS=1run is reused forever underfull_datasets. CI clones fresh and can never hit it. All three reported failures reproduce exactly from a clean checkout —pixelization.pymatches the original report to 11 significant figures, andregularization.py's tolerance vector matches exactly.No tolerance change was warranted: all three assertions were correctly detecting an invalid dataset.
Outcome
rmtrees committed, allowlisted data).dashboard.md/dashboard.htmlregenerated;lifecycle.py checkpasses.🤖 Generated with Claude Code
https://claude.ai/code/session_01VEHLT33XpVcRt5YCJGLRMJ
Generated by Claude Code